﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Common.Type
{
    public class TreeViewNode
    {
        public TreeViewNode()
        {
            Nodes = new List<TreeViewNode>();
        }

        /// <summary>
        /// Name of tree
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// Value to display of tree
        /// </summary>
        public string Value { get; set; }

        /// <summary>
        /// Value to display of tree
        /// </summary>
        public string ImageUrl { get; set; }

        /// <summary>
        /// Value to display of tree
        /// </summary>
        public string CssIcon { get; set; }

        /// <summary>
        /// Value to display of tree
        /// </summary>
        public string Url { get; set; }

        /// <summary>
        /// checkbox is checked
        /// </summary>
        public bool Checked { get; set; }

        /// <summary>
        /// display checkbox
        /// </summary>
        public bool DisplayCheck { get; set; }

        /// <summary>
        /// Node is current Activated
        /// </summary>
        public bool Activated { get; set; }

        /// <summary>
        /// Type of node: "0" is Department; "1" is Employee
        /// </summary>
        public int NodeType { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public object Extended { get; set; }

        /// <summary>
        /// Children nodes of treemode
        /// </summary>
        public IList<TreeViewNode> Nodes { get; set; }
        public TreeViewNode Parent { get; set; }
    }
}
